<?php
/*
 * 此文件用于验证隐私号服务API接口，供开发时参考
 * 执行验证前请确保文件为utf-8编码，并替换相应参数为您自己的信息，并取消相关调用的注释
 * 建议验证前先执行Test.php验证PHP环境
 *
 * 2017/11/30
 */

namespace Aliyun\DySDKLite\Pls\Demo;

require_once "../SignatureHelper.php";

use Aliyun\DySDKLite\SignatureHelper;


// todo 接口定义，请先替换相应参数为您自己的信息

/**
 * 更新绑定关系
 */
function updateSubscription() {

    $params = array ();

    // *** 需用户填写部分 ***

    // fixme 必填: 请参阅 https://ak-console.aliyun.com/ 取得您的AK信息
    $accessKeyId = "your access key id";
    $accessKeySecret = "your access key secret";

    // fixme 必填: 号池Key
    $params["PoolKey"] = "FC123456";

    // fixme 必填: 您所选择的产品类型,目前支持AXB_170、AXN_170、AXN_95三种产品类型
    $params["ProductType"] = "AXB_170";

    // fixme 必填: 创建绑定关系API接口所返回的订购关系ID
    $params["SubsId"] = "123456";

    // fixme 必填: 创建绑定关系API接口所返回的X号码
    $params["PhoneNoX"] = "170000000";



    // todo 以下操作三选一, 目前支持三种类型: updateNoA(修改A号码)、updateNoB(修改B号码)、updateExpire(更新绑定关系有效期)

    // -------------------------------------------------------------------

    // 1. 修改A号码示例：
    // fixme 必填: 操作类型
    $params["OperateType"] = "updateNoA";

    // fixme OperateType为updateNoA时必选: 需要修改的A号码
    $params["PhoneNoA"] = "150000000";

    // -------------------------------------------------------------------

    // 2. 修改B号码示例：
    // fixme 必填: 操作类型
    $params["OperateType"] = "updateNoB";

    // fixme OperateType为updateNoB时必选: 需要修改的B号码
    $params["PhoneNoB"] = "150000000";

    // -------------------------------------------------------------------

    // 3. 更新绑定关系有效期示例：
    // fixme 必填: 操作类型
    $params["OperateType"] = "updateExpire";

    // fixme OperateType为updateExpire时必选: 需要修改的绑定关系有效期
    $params["Expiration"] = "2017-09-05 12:00:00";

    // -------------------------------------------------------------------


    //若修改B号码，请调用：$params["OperateType"] = "updateNoB"; $params["PhoneNoA"] = ".....";

    // *** 需用户填写部分结束, 以下代码若无必要无需更改 ***

    // 初始化SignatureHelper实例用于设置参数，签名以及发送请求
    $helper = new SignatureHelper();

    // 此处可能会抛出异常，注意catch
    $content = $helper->request(
        $accessKeyId,
        $accessKeySecret,
        "dyplsapi.aliyuncs.com",
        array_merge($params, array(
            "RegionId" => "cn-hangzhou",
            "Action" => "UpdateSubscription",
            "Version" => "2017-05-25",
        ))
        // fixme 选填: 启用https
        // ,true
    );

    return $content;
}

ini_set("display_errors", "on"); // 显示错误提示，仅用于测试时排查问题
// error_reporting(E_ALL); // 显示所有错误提示，仅用于测试时排查问题
set_time_limit(0); // 防止脚本超时，仅用于测试使用，生产环境请按实际情况设置
header("Content-Type: text/plain; charset=utf-8"); // 输出为utf-8的文本格式，仅用于测试

// 验证更新绑定关系(UpdateSubscription)接口
print_r(updateSubscription());
